package com.wxapp.pay.api.pojo.pojo.po.vo.pay;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @author lgl
 */
@Data
public class QChangeStatusVo implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 订单code
     */
    @Schema(description = "订单code", requiredMode = Schema.RequiredMode.REQUIRED)
    private String orderCode;
    /**
     * 订单状态
     */
    @Schema(description = "订单状态 :unpaid 未支付 paid 已付款 unshipped 未发货 shipped 已发货 unsigned 未签收 sign 已签收 refusal 拒收 fail 支付失败 expire 已过期 completed 已完成", requiredMode = Schema.RequiredMode.REQUIRED)
    private String nowState;
    /**
     * 下一状态
     */
    @Schema(description = "订单状态 :unpaid 未支付 paid 已付款 unshipped 未发货 shipped 已发货 unsigned 未签收 sign 已签收 refusal 拒收 fail 支付失败 expire 已过期 completed 已完成", requiredMode = Schema.RequiredMode.REQUIRED)
    private String nextState;
    /**
     * 支付方式
     */
    @Schema(description = "支付方式", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private String payWay;
    /**
     * 支付时间
     */
    @Schema(description = "支付时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private LocalDateTime payTime;
    /**
     * 支付账号
     */
    @Schema(description = "支付账号", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private String payAccount;
}
